package com.zmn.oms.business.interfaces.master;

import com.zmn.oms.common.exception.OmsBaseException;
import com.zmn.oms.model.dto.master.MasterSharingDTO;
import com.zmn.oms.model.entity.master.OrderMaster;
import com.zmn.oms.model.entity.work.OrderWork;

import java.util.List;
import java.util.Map;

/**
 * 类描述：订单是否
 *
 * @author liuying
 * @date 2018/12/11 14:16
 */
public interface OrderMasterBService {

    /**
     * 保存工程师
     *
     * @param orderMaster 工程师
     * @throws OmsBaseException
     */
    void insertOrderMaster(OrderMaster orderMaster) throws OmsBaseException;

    /**
     * 批量保存工程师
     *
     * @param orderMasters 工程师列表
     * @throws OmsBaseException
     */
    void insertAll(List<OrderMaster> orderMasters) throws OmsBaseException;

    /**
     * 更新工程师分润信息
     *
     * @param masterSharingDTO 工程师分润信息
     * @throws OmsBaseException
     */
    int updateOrderMasterShare(MasterSharingDTO masterSharingDTO) throws OmsBaseException;

    /**
     * 检查工单分润是否填写
     * @param orderWork 工单
     * @return 是否配置了工单分润
     */
    boolean checkMasterSharing(OrderWork orderWork);

    /**
     * 获取工程师身份
     * @param masterIdList 师傅ID集合
     * @return 是否配置了工单分润
     */
    Map<Integer, String> listMasterIdentityMap(List<Integer> masterIdList);

}
